home *** CD-ROM | disk | FTP | other *** search
/ Aminet 31 / Aminet 31 (1999)(Schatztruhe)[!][Jun 1999].iso / Aminet / disk / misc / xfs.readme < prev    next >
Encoding:
Text File  |  1999-05-02  |  18.0 KB  |  410 lines

  1. Short:    V2.17 Multi filesys+.device, win95+mac++
  2. Author:   frans@xfilesystem.freeserve.co.uk (francis swift)
  3. Uploader: frans@xfilesystem.freeserve.co.uk (francis swift)
  4. Type:     disk/misc
  5. Replaces: xfs.lha
  6.  
  7. XFileSystem Version 2.17
  8.  
  9. Main Components:
  10.  
  11. L:    xfsd        (FD0: / FILE0: etc file system handler)
  12.       devd        (DEV: handler to make devices look like files)
  13.  
  14. DEVS: fd.device   (FD0: multi-format track device)
  15.       file.device (FILE0: makes disk file images look like real disks)
  16.       cw.device   (CW0: front end for multidisk.device)
  17.  
  18. plus either mountlist.xfsd (for your devs: directory on <= WB2)
  19. or FD0, FILE0 etc (for your devs:DOSDrivers directory on WB3).
  20.  
  21. New this release:
  22.  
  23.   * xfsd mounts multiple partitions
  24.   * devd (DEV:) can access dos devices (eg DEV:DF0)
  25.   * Catweasel support (via new cw.device)
  26.   * .adz / .pkd files supported by file.device
  27.   * more flexible flags format for fd.device
  28.  
  29. Current xfsd status:
  30.  
  31.               readdir  read  write delete rename readpartition format
  32. amiga           +       +      +     +      +          +         ?
  33. msdos / win95   +       +      +     +      +          +
  34. mac             +       +                              +
  35. ql              +       +      +     +      +                    ?
  36. minix           +       +      +     +      +
  37. archimedes      +       +
  38. cpm             +       +
  39. 1541 / 1581     +       +
  40. spectrum        +       +
  41.  
  42. Current fd.device status:
  43.  
  44.                     read   write  trackformat
  45. Amiga tracks          +      +         +
  46. Diskspare 80/82 trk   +      +         +
  47. mfm (pc etc)          +      +         +
  48.  
  49. Current file.device status:
  50.  
  51.                       read   write  format
  52. flat files (.adf etc)   +      +
  53. .dms files              +
  54. .adz/.gz files          +
  55. .pkd files              +      ?
  56. pctask/janus hardfiles  +      +
  57.  
  58. Formatting of disks is currently only at the beta stage, and is
  59. only available on Amiga and QL disks. Remember that as far as the
  60. handler is concerned, formatting means writing a new filesystem
  61. onto the disk, and doesn't actually involve low level writing of
  62. new tracks, this being done by the Format program directly to the
  63. low level exec device. Of course, the fd.device can use any type
  64. of disk so if the disk you use is in the wrong format (say it's
  65. a 720k disk) and you write an inappropriate filesystem to it
  66. (eg FFS) then only xfsd will be able to use it. So make sure
  67. you use the devio command to tell fd.device to low level format
  68. the disk first (read the guide).
  69.  
  70. Of course you can still copy whole disk images to a blank disk
  71. if you prefer (using DEV:fd.device,unit,size - see the guide),
  72. and currently that is the only way to format disks for which xfsd
  73. doesn't support formatting.
  74.  
  75. See the xfs.guide 'usage' section for further info (and the faq).
  76.  
  77. ---------------------------- xfs217 -----------------------------
  78.  
  79. fd.device V42.88 fixes PostWriteDelay bug (which probably didn't
  80. affect anything) and also the motor speed up delay for write
  81. operations has been increased to 200ms (seems to work ok now).
  82. Also implemented new flags scheme to allow more flexible format
  83. selection, see the guide for more details.
  84.  
  85. devd (DEV:) can now read dos devices (eg DEV:FD0). Actually, it
  86. just peeks the DeviceNode/FSSM/DosEnv for the information it
  87. requires and accesses the exec device directly itself. Also added
  88. the ability to set the start position and length, see the guide
  89. for more details.
  90.  
  91. file.device V42.21 can now directly access GZip'ed disk images.
  92. It doesn't matter whether the files are called .adz or .gz as the
  93. files are recognised by their content. It can also now access
  94. PackDev (.pkd) files. As these use XPK for crunching this must
  95. be installed to fully utilise this facility.
  96.  
  97. Renamed mount.xfsd to mountlist.xfs and merged in mount.dev, so
  98. there's only one mountlist file (if you're not using WB3).
  99.  
  100. Finally got round to implementing the internal multi-threading so
  101. now ALL partitions on a device are mounted. Partition names are
  102. used as device names if possible, but where they don't exist such
  103. as on fdisk'ed media then default names are generated. So if you
  104. for instance mount ZIP0: and insert partitioned zip media you will
  105. get new devices ZIP0A: ZIP0B: etc. If the device names clash with
  106. any existing devices then a further default is generated.
  107.  
  108. Added Catweasel support via new cw.device, which acts as a front-end
  109. to multidisk.device to allow all disk types to work through a single
  110. device. See the CW0: and CW1: entries in mountlist.xfs and their
  111. equivalent WB3 icons. Note that these entries use the new startup
  112. string / tooltype.
  113.  
  114. Added new general device entry SCSI0: which can be made to work
  115. with any size / geometry device, just change the startup string
  116. to the exec device / unit required. It uses a new facility in xfsd
  117. which retrieves the device geometry using SCSI commands if the usual
  118. trackdisk-style geometry isn't available. So there should really be
  119. no need for separate ZIP/JAZ etc entries from now on.
  120.  
  121. Improved disk change handling in file.device. Now the file requester
  122. always appears if you press the shift-alt-numkey for the particular
  123. unit. I meant to do this ages ago but forgot - thanks Linus.
  124.  
  125. Internally re-organised the file.device to match the way both
  126. xfsd and fd.device work, with regard to adding new facilities. This
  127. should allow me to more quickly implement new file formats.
  128. Internally the fd.device has always worked via a sort of class system,
  129. with a list of track codecs for the different encoding schemes,
  130. MFM for PC disks etc, MFMA for Amiga disks, and originally there was
  131. a GCR codec which was intended for Apple disks, but that has been
  132. temporarily removed. In addition, xfsd has an internal list of
  133. classes, one for each filesystem type. On the other hand file.device
  134. was a mess, with each new facility hacked onto the existing ones.
  135. Anyway, now file.device is in better shape, and in particular the
  136. interface to each file type codec is pretty much finalised, I may
  137. release some source to show how to implement a file codec.
  138. On the other hand, the xfsd API is in the process of being changed,
  139. so it will be a while before I can release any source to allow
  140. external additions to it. But rest assured, it has always been my
  141. intention to implement the filesystems as external plug-ins, even
  142. the existing ones, since most people don't need to read QL or Minix
  143. disks.
  144.  
  145. Added new control word (PARTITION=) to select the partition number
  146. to mount on partitioned media, so now you can use a mountlist
  147. using the whole disk and let xfsd find the partition on it without
  148. you knowing the exact cylinders etc. This should work ok for most
  149. PC and Amiga disks, and Mac disks that don't have device driver
  150. blocks at the start (as I don't have info on these at present).
  151.  
  152. Added formatting of Amiga disks, though this should be considered
  153. beta only at present. Also found slight error in delete method
  154. of the Amiga disk class, though it hadn't shown up in actual use.
  155.  
  156. Fixed error in QL disk class, everything worked on the disk itself
  157. but the free sectors value wasn't being updated on the system copy
  158. so Info/DiskInfo reports were wrong.
  159.  
  160. Fixed bug in Minix - well re-fixed something I accidentally broke
  161. in the name handling when I was starting to add 30 character names
  162. (which isn't quite finished yet). Note that the code for the Minix
  163. handler has been implemented in classic unix style, which means
  164. that only BigEndian disks (ie written on some sort of 68000 machine)
  165. will be recognised (at present). I'll fix this when I get round to
  166. implementing ext2fs and other both-endian file systems.
  167.  
  168. Fixed semaphore race bug in file.device which caused it to crash
  169. when used with rom FastFileSystem (though why you'd want to I can't
  170. imagine). Also added ability to use protect flags on disk image
  171. files, so now if you write-protect a file, when you select it with
  172. file.device it will appear (and work) as a write-protected disk.
  173. Also the ENV: variable name for each unit (if you use this) has
  174. changed. It was file/unit#, now changed to file.device,# ie not
  175. in a sub-directory. So now file.device unit 0 will look for the
  176. ENV: variable file.device,0 (which is in fact its task name).
  177.  
  178. ---------------------------- xfs216 -----------------------------
  179.  
  180. Fixed slight bug in clearing newly allocated directory blocks in
  181. the PC disk handler. This led to bogus entries sometimes showing
  182. up with weird names. There was only a one in sixteen chance of
  183. this occuring, and it never occured on 1440k disks, so I'd never
  184. seen it. Anyway, it should be fixed now.
  185.  
  186. Somehow the JAZX entry in DOSDrivers went missing. Now included.
  187.  
  188. The disk type numbers for Minix have changed to accommodate the
  189. long file name variants:
  190.  
  191. MNX\0  Original Minix,  14 character names
  192. MNX\1  Original Minix,  30 character names
  193. MNX\2  Minix Version 2, 14 character names
  194. MNX\3  Minix Version 2, 30 character names
  195.  
  196. Note that of the above only MNX\0 is supported at present.
  197.  
  198. Due to internal re-ordering of the individual handlers, the flag
  199. bits got messed up. So I got rid of them. The new scheme uses the
  200. control field string to enable/disable particular handlers. See
  201. the explanation in the guide (usage > Workbench) or mount.xfsd.
  202.  
  203. There is a new utility called dospkt in the C directory, also
  204. an upgraded version of the devio utility. These can be used to
  205. instruct devices/handlers to do low/high level formatting of
  206. disks (amongst other things). As an experiment I've enabled
  207. the disk format code in the QL handler, so using devio/dospkt
  208. you should be able to create valid QL disks. For the next release
  209. I'll probably add PC/Minix disk formatting.
  210.  
  211. Note that the usage of devio has changed so if you are using it
  212. in scripts you will need to change them.
  213.  
  214. --------------------------- xfs215 ------------------------------
  215.  
  216. Added support for 1581 disks (read only at present). These disks
  217. sometimes have what are loosely referred to as 'partitions', really
  218. fixed length directories. These are accessed just like directories.
  219.  
  220. You can now use fd.device to 'format' disks. That is, you can use
  221. the DEV:fd.device,<unit>,<flags> pseudo file to write out disk
  222. images of a particular format. So if you have a blank disk, read
  223. it in using
  224.  
  225.    copy DEV:fd.device,0 ram:temp
  226.  
  227. This will copy whatever disk is in drive 0 into file 'ram:temp'.
  228. You can then write it out again using, for instance
  229.  
  230.    copy ram:temp DEV:fd.device,0,880  ; if it is an amiga disk
  231.    copy ram:temp DEV:fd.device,0,720  ; for a pc / ql / minix disk
  232.  
  233. etc. See further explanations in 'usage > fd.device' in the guide.
  234.  
  235. To match up with the above, devd (the DEV: handler) has been
  236. slightly amended, as has the devio utility. You will also find
  237. a later version of the XL friendly fd.device in devs/storage.
  238.  
  239. While rewriting fd.device I took some time to examine the way
  240. diskspare.device generated checksums (which was the reason for
  241. fd.device not being able to write to these disks properly). I
  242. also implemented an additional track scan to determine whether
  243. a disk has more than 80 tracks. So now there should be full
  244. support for all the different diskspare permutations. There is
  245. also a new version of the mfm utility (for use with rawpatch)
  246. to allow track checksum verification.
  247.  
  248. --------------------------- xfs214 ------------------------------
  249.  
  250. Completed MINIX handler. Of course there may be some hidden bugs
  251. so it should be considered just a beta version for now.
  252.  
  253. Patched disk type into dl_DiskType. Only reason it hadn't been
  254. done till now was I thought I'd already done it. So now you will
  255. get sensible results from Stephan Rupprecht's Info program.
  256. Anyway, it gives me an excuse to explain the disk types that
  257. are returned.
  258.  
  259. Amiga       DOS\0
  260.             DOS\1    FFS
  261.             DOS\2    Int
  262.             DOS\3    Int FFS
  263.             DOS\4    DC
  264.             DOS\5    DC FFS
  265.  
  266. MSDOS/W95   MSD\0
  267.  
  268. MAC         MAC\0
  269.  
  270. Minix       MNX\1    (and later maybe MNX\2)
  271.  
  272. QL          QL5A      720k (and ED disks)
  273.             QL5B     1440k
  274.  
  275. Spectrum    ZXS\0    Disciple
  276.             ZXS\1    UniDos
  277.             ZXS\2    SamDos
  278.             ZXS\4    Opus (180k)
  279.  
  280. Archimedes  ARMD
  281.             ARME
  282.  
  283. CP/M        CPM\2    (and later ZXS\3 for Plus3Dos)
  284.  
  285. C64         1541     (and later 1581)
  286.  
  287. These will (eventually, NOT YET) be the dos types passed to the
  288. Format() command to select the file system.
  289.  
  290. Also, the file.device has been updated to allow it to work better
  291. with devd (DEV:) so that you get the chance to select a file
  292. before the DEV: device asks if there's a disk (file) in the 'drive'.
  293.  
  294. Now that I have some 1581 disks to experiment with I should be
  295. able to add handling of these to xfs. Since these disks use
  296. side skewing (quick explanation - the top is on the bottom), I
  297. will need to modify fd.device to accept this format. Also, although
  298. the physical sectors are 512 bytes, the logical sectors are only
  299. 256 bytes, which will make sector allocation complicated, so
  300. for the moment support will be read only.
  301.  
  302. Finally I tidied up some clean-up routines so some random crashes
  303. on removal of disks should disappear.
  304.  
  305. --------------------------- xfs213 ------------------------------
  306.  
  307. Added a couple of extra disk types to existing handler modules,
  308. specifically Archimedes D type disks, and Spectrum 180k (Opus
  309. Discovery) type disks. Note that both use unusual sector sizes,
  310. the Archimedes D using 1024 byte sectors, and the Spectrum 180k
  311. disks using 256 byte sectors (it's also 40 track single sided!).
  312. Luckily fd.device sorts all this out transparently.
  313.  
  314. One more technical point. Whenever a disk is recognised by xfsd
  315. the disk dos type is now written into de_DosType in the environment
  316. table of the device entry in the dos list. This is to allow
  317. anyone using the Info() call (which xfsd implements like most
  318. handlers by returning ID_DOS_DISK in id_DiskType for disks it
  319. recognises) to access the true disk type.
  320.  
  321. Updated crc utility to fix a slight bug.
  322.  
  323. There's a slight change to the flags setting in the mountlists,
  324. which should be backwards compatible, see mount.xfsd.
  325.  
  326. Up till this release it was possible to open directories as if
  327. they were files. This was a side effect of the internal
  328. implementation which took advantage of the file-like structure
  329. of directories in certain filesystems (QDOS,MSDOS,RISCOS etc).
  330. I left this in so it would be possible to write external
  331. utilities to access filesystem-specific information that would
  332. otherwise be inaccessible via xfsd. Unfortunately, there are
  333. too many badly written programs out there that, when given no
  334. file name on the command line, open the empty string by mistake.
  335. Of course, this means the current directory, so they get a
  336. 'wrong type' error. With xfsd, they would get no error, and
  337. depending on the way the filesystem sets the file size for the
  338. directory, may try to read the whole disk into memory, or 4GB,
  339. or any random number. Anyway I've disallowed this again.
  340.  
  341.  
  342. ============================= Archive contents =============================
  343.  
  344. Original  Packed Ratio    Date     Time    Name
  345. -------- ------- ----- --------- --------  -------------
  346.      628     254 59.5% 05-Feb-99 03:26:52  xfs.info
  347.      628     274 56.3% 28-Jun-98 18:02:58 +C.info
  348.    12148    8299 31.6% 29-Apr-98 07:21:22 +crc
  349.      450     176 60.8% 28-Jun-98 18:02:58 +crc.info
  350.    16040    8662 45.9% 24-Jun-98 03:03:56 +devio
  351.      450     176 60.8% 28-Jun-98 18:02:58 +devio.info
  352.    12188    6795 44.2% 28-Jun-98 04:40:14 +dospkt
  353.      450     184 59.1% 28-Jun-98 18:02:58 +dospkt.info
  354.    20584   11728 43.0% 10-Mar-99 06:47:54 +mfm
  355.      450     182 59.5% 28-Jun-98 18:02:58 +mfm.info
  356.    16088    9388 41.6% 07-Mar-99 22:01:12 +rawpatch
  357.      450     176 60.8% 28-Jun-98 18:02:58 +rawpatch.info
  358.    28152   18091 35.7% 11-Feb-98 23:24:16 +x-code
  359.      450     178 60.4% 28-Jun-98 18:02:58 +x-code.info
  360.    48772   26633 45.3% 22-Aug-98 19:21:34 +x-hfsdir
  361.      450     178 60.4% 28-Jun-98 18:02:58 +x-hfsdir.info
  362.      628     256 59.2% 12-Feb-98 08:35:58 +Devs.info
  363.     5900    3582 39.2% 12-Mar-99 06:05:50 +cw.device
  364.      450     171 62.0% 07-Mar-99 06:37:28 +cw.device.info
  365.      628     272 56.6% 03-Jan-99 17:35:58 +DOSDrivers.info
  366.      629     387 38.4% 30-Dec-98 22:07:10 +CW0
  367.      525     305 41.9% 03-Jan-99 17:35:58 +CW0.info
  368.      635     389 38.7% 30-Dec-98 22:07:02 +CW1
  369.      531     309 41.8% 03-Jan-99 17:35:58 +CW1.info
  370.      117     108  7.6% 12-Feb-98 07:55:22 +DEV
  371.      481     270 43.8% 03-Jan-99 17:35:58 +DEV.info
  372.      817     466 42.9% 28-Jun-98 17:38:52 +FD0
  373.      492     276 43.9% 03-Jan-99 17:35:58 +FD0.info
  374.      808     459 43.1% 28-Jun-98 17:39:10 +FD1
  375.      492     274 44.3% 03-Jan-99 17:35:58 +FD1.info
  376.      531     320 39.7% 28-Jun-98 17:39:28 +FILE0
  377.      492     277 43.6% 03-Jan-99 17:35:58 +FILE0.info
  378.      531     319 39.9% 28-Jun-98 17:39:58 +FILE1
  379.      492     272 44.7% 03-Jan-99 17:35:58 +FILE1.info
  380.      716     402 43.8% 28-Jun-98 17:40:20 +JAZX
  381.      529     306 42.1% 03-Jan-99 17:35:58 +JAZX.info
  382.      605     365 39.6% 05-Feb-99 01:47:18 +SCSI0
  383.      519     301 42.0% 03-Jan-99 17:36:40 +SCSI0.info
  384.      861     493 42.7% 04-May-98 16:58:16 +FX0
  385.      492     274 44.3% 13-Jan-95 00:38:04 +FX0.info
  386.      852     486 42.9% 04-May-98 16:58:36 +FX1
  387.      492     271 44.9% 13-Jan-95 00:38:04 +FX1.info
  388.      709     396 44.1% 28-Jun-98 17:43:22 +ZIPX
  389.      533     309 42.0% 03-Jan-99 17:35:58 +ZIPX.info
  390.    25992   14188 45.4% 12-Mar-99 04:23:36 +fd.device
  391.      450     171 62.0% 12-Feb-98 08:50:00 +fd.device.info
  392.    43152   22668 47.4% 24-Feb-99 02:59:40 +file.device
  393.      450     171 62.0% 12-Feb-98 08:50:00 +file.device.info
  394.     8970    2539 71.6% 07-Mar-99 02:34:58 +mountlist.xfs
  395.      450     201 55.3% 12-Feb-98 08:50:00 +mountlist.xfs.info
  396.      628     254 59.5% 07-Mar-99 06:37:56 +Storage.info
  397.    24972   13671 45.2% 12-Mar-99 04:20:02 +fd.device.XL
  398.      450     171 62.0% 12-Feb-98 08:50:00 +fd.device.XL.info
  399.      628     258 58.9% 12-Feb-98 08:35:58 +L.info
  400.     8720    4960 43.1% 07-Mar-99 04:50:38 +devd
  401.      450     171 62.0% 12-Feb-98 08:49:38 +devd.info
  402.   117804   63577 46.0% 12-Mar-99 02:14:22 +xfsd
  403.      450     171 62.0% 12-Feb-98 08:49:38 +xfsd.info
  404.    77310   29997 61.1% 24-Mar-99 01:56:06 +xfs.guide
  405.      469     242 48.4% 12-Feb-98 08:35:58 +xfs.guide.info
  406.    14855    6170 58.4% 23-Mar-99 23:27:04 +xfs.readme
  407.      463     238 48.5% 12-Feb-98 08:35:58 +xfs.readme.info
  408. -------- ------- ----- --------- --------
  409.   506528  263507 47.9% 24-Mar-99 22:05:26   62 files
  410.